iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 14
0
Software Development

SQL 30天手把手入門系列 第 14

Day 14 - SQL 基本語法 - 來選擇表單內的資料吧

  • 分享至 

  • xImage
  •  

若想要從資料表中選出資料,就會使用到 SELECT 的語法。這動作也可以被稱為查詢(Query)。

基本語法

SELECT <欄位名稱> FROM <資料表名稱>;

假設今天要取出 Product 資料表中的 id, name, sell_price 的欄位資料,那麼指令就會像是這樣:

SELECT id, name, sell_price FROM Product;
SELECT name, id, sell_price FROM Product;

比較一下上面兩個,你會發現你是可以指定欄位輸出順序的。
day14Demo1
day14Demo2

輸出全部資料

將欄位名稱改成 "*" 即可,不過你會發現你無法指定欄位的輸出順序。
day14Demo3

幫欄位取別名

由於欄位名稱預設都是英文和數字組成,若你想要幫欄位取個中文名稱好辨識,那麼你可以用上 "AS"。

/*AS 後方接的字串要使用雙引號*/
SELECT id AS "代碼", 
       name AS "產品名稱", 
       sell_price AS "售價"
       FROM Product;

day14Demo4

輸出時增加一些附加欄位資訊

不改動、新增實際的資料表,只是在選取時添加一些欄位輸出的話,可以在 SELECT 內下指令如下:

/*字串、日期要以單引號加入 SELECT 語法中*/
SELECT '產品' AS string, 50 AS number, '2020-01-01' AS date, id , name, sell_price FROM Product; 

day14Demo5

省略重複記錄

記得在 SELECT 的語句中,加上個 DISTINCT 即可。語法會像是這樣:

/*DISTINCT 只能寫在第一個欄位名稱的前面*/
SELECT DISTINCT <欄位名稱> FROM <資料表名稱>;

假設今天想要知道商品分類有哪些,那麼就像以下指令:

SELECT DISTINCT category FROM Product;

day14Demo6
要額外注意的是:

  • NULL 空白欄位也會算做一項,被一同輸出
  • 若使用多個欄位名稱當做條件,那麼得「每個欄位內的資料都完全相同」,才會被省略

下一篇會提到查詢概念常用的 WHERE ,並講述如何回傳 JSON 格式。


上一篇
Day13 - SQL 基本語法 - 資料表新增資料、修改和刪除資料表
下一篇
Day 15 - SQL 基本語法 - 有條件的選資料和 回傳 JSON 格式
系列文
SQL 30天手把手入門30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言